import md5 from 'crypto-js/md5'
import Cart from '../../dbs/models/cart'
module.exports = async (ctx) => {
  // 判断用户是否已登录
  if (!ctx.isAuthenticated()) {
    // 用户没有登陆
    ctx.body = {
      code: -1,
      msg: 'please login'
    }
  } else {
    // 用户已登录
    // 创建下单时间
    const time = Date()

    // 生成订单号
    const cartNo = md5(Math.random() * 1000 + time).toString()

    // 获取用户传递过来的商品id和商品详情数据
    const {
      params: {
        id,
        detail
      }
    } = ctx.request.body
    // 创建购物车
    const cart = new Cart({
      id,
      cartNo,
      time,
      user: ctx.session.passport.user,
      detail
    })
    // 保存
    const result = await cart.save()
    // 判断是否创建成功
    if (result) {
      ctx.body = {
        code: 0,
        msg: '',
        id: cartNo
      }
    } else {
      ctx.body = {
        code: -1,
        msg: 'fail'
      }
    }
  }
}
